<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxWindowsIntrinsics.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('PxWindowsIntrinsics_8h.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">PxWindowsIntrinsics.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="Px_8h_source.html">foundation/Px.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="PxSharedAssert_8h_source.html">foundation/PxSharedAssert.h</a>&quot;</code><br />
<code>#include &lt;math.h&gt;</code><br />
<code>#include &lt;float.h&gt;</code><br />
</div>
<p><a href="PxWindowsIntrinsics_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1cf5e31b1076fc655d2a46a5257d6590"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a1cf5e31b1076fc655d2a46a5257d6590">abs</a> (float a)</td></tr>
<tr class="memdesc:a1cf5e31b1076fc655d2a46a5257d6590"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific absolute value  <a href="#a1cf5e31b1076fc655d2a46a5257d6590">More...</a><br /></td></tr>
<tr class="separator:a1cf5e31b1076fc655d2a46a5257d6590"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b6eb99ef7e675d607268a1f8413be5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a8b6eb99ef7e675d607268a1f8413be5e">fsel</a> (float a, float b, float c)</td></tr>
<tr class="memdesc:a8b6eb99ef7e675d607268a1f8413be5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific select float  <a href="#a8b6eb99ef7e675d607268a1f8413be5e">More...</a><br /></td></tr>
<tr class="separator:a8b6eb99ef7e675d607268a1f8413be5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a480a9e7204fe3c8f4b3d60eb7165fae8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a480a9e7204fe3c8f4b3d60eb7165fae8">sign</a> (float a)</td></tr>
<tr class="memdesc:a480a9e7204fe3c8f4b3d60eb7165fae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific sign  <a href="#a480a9e7204fe3c8f4b3d60eb7165fae8">More...</a><br /></td></tr>
<tr class="separator:a480a9e7204fe3c8f4b3d60eb7165fae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6806d765fa4621492ee988d3d3c13c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#aa6806d765fa4621492ee988d3d3c13c6">recip</a> (float a)</td></tr>
<tr class="memdesc:aa6806d765fa4621492ee988d3d3c13c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific reciprocal  <a href="#aa6806d765fa4621492ee988d3d3c13c6">More...</a><br /></td></tr>
<tr class="separator:aa6806d765fa4621492ee988d3d3c13c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a4b10ef013902b46ab72a6f301faaf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a39a4b10ef013902b46ab72a6f301faaf">recipFast</a> (float a)</td></tr>
<tr class="memdesc:a39a4b10ef013902b46ab72a6f301faaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific reciprocal estimate  <a href="#a39a4b10ef013902b46ab72a6f301faaf">More...</a><br /></td></tr>
<tr class="separator:a39a4b10ef013902b46ab72a6f301faaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93316de46822f61a4fb79f603d05be61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a93316de46822f61a4fb79f603d05be61">sqrt</a> (float a)</td></tr>
<tr class="memdesc:a93316de46822f61a4fb79f603d05be61"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific square root  <a href="#a93316de46822f61a4fb79f603d05be61">More...</a><br /></td></tr>
<tr class="separator:a93316de46822f61a4fb79f603d05be61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11fd1983ba8a2204909ae97ca3ed322f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a11fd1983ba8a2204909ae97ca3ed322f">recipSqrt</a> (float a)</td></tr>
<tr class="memdesc:a11fd1983ba8a2204909ae97ca3ed322f"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific reciprocal square root  <a href="#a11fd1983ba8a2204909ae97ca3ed322f">More...</a><br /></td></tr>
<tr class="separator:a11fd1983ba8a2204909ae97ca3ed322f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adda5156abeb71c4d649c10a90c384814"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#adda5156abeb71c4d649c10a90c384814">recipSqrtFast</a> (float a)</td></tr>
<tr class="memdesc:adda5156abeb71c4d649c10a90c384814"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific reciprocal square root estimate  <a href="#adda5156abeb71c4d649c10a90c384814">More...</a><br /></td></tr>
<tr class="separator:adda5156abeb71c4d649c10a90c384814"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1934f6d8ecf82dbfb597f965fb09846"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#ae1934f6d8ecf82dbfb597f965fb09846">sin</a> (float a)</td></tr>
<tr class="memdesc:ae1934f6d8ecf82dbfb597f965fb09846"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific sine  <a href="#ae1934f6d8ecf82dbfb597f965fb09846">More...</a><br /></td></tr>
<tr class="separator:ae1934f6d8ecf82dbfb597f965fb09846"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87498b7c02e15d4a59213016c7d1f4e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a87498b7c02e15d4a59213016c7d1f4e8">cos</a> (float a)</td></tr>
<tr class="memdesc:a87498b7c02e15d4a59213016c7d1f4e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific cosine  <a href="#a87498b7c02e15d4a59213016c7d1f4e8">More...</a><br /></td></tr>
<tr class="separator:a87498b7c02e15d4a59213016c7d1f4e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebde282c6d91cb975d8e56196c0f7a65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#aebde282c6d91cb975d8e56196c0f7a65">selectMin</a> (float a, float b)</td></tr>
<tr class="memdesc:aebde282c6d91cb975d8e56196c0f7a65"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific minimum  <a href="#aebde282c6d91cb975d8e56196c0f7a65">More...</a><br /></td></tr>
<tr class="separator:aebde282c6d91cb975d8e56196c0f7a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2021ee304ce528baa264c35c7bb0f981"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a2021ee304ce528baa264c35c7bb0f981">selectMax</a> (float a, float b)</td></tr>
<tr class="memdesc:a2021ee304ce528baa264c35c7bb0f981"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific maximum  <a href="#a2021ee304ce528baa264c35c7bb0f981">More...</a><br /></td></tr>
<tr class="separator:a2021ee304ce528baa264c35c7bb0f981"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cf2084ddd2ba3ac6cc5b0e4e7389806"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a6cf2084ddd2ba3ac6cc5b0e4e7389806">isFinite</a> (float a)</td></tr>
<tr class="memdesc:a6cf2084ddd2ba3ac6cc5b0e4e7389806"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific finiteness check (not INF or NAN)  <a href="#a6cf2084ddd2ba3ac6cc5b0e4e7389806">More...</a><br /></td></tr>
<tr class="separator:a6cf2084ddd2ba3ac6cc5b0e4e7389806"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d4ea7807df2fcf1968275bc06e79319"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a5d4ea7807df2fcf1968275bc06e79319">isFinite</a> (double a)</td></tr>
<tr class="memdesc:a5d4ea7807df2fcf1968275bc06e79319"><td class="mdescLeft">&#160;</td><td class="mdescRight">platform-specific finiteness check (not INF or NAN)  <a href="#a5d4ea7807df2fcf1968275bc06e79319">More...</a><br /></td></tr>
<tr class="separator:a5d4ea7807df2fcf1968275bc06e79319"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77584c1c595ec2dbc695f76986b5e616"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a77584c1c595ec2dbc695f76986b5e616">memZero</a> (void *dest, uint32_t count)</td></tr>
<tr class="separator:a77584c1c595ec2dbc695f76986b5e616"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a298ee9e11253b68a85543aaf66dc30e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a298ee9e11253b68a85543aaf66dc30e2">memSet</a> (void *dest, int32_t c, uint32_t count)</td></tr>
<tr class="separator:a298ee9e11253b68a85543aaf66dc30e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac68f9e9de2f571d9a37ea9b801d5913"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#aac68f9e9de2f571d9a37ea9b801d5913">memCopy</a> (void *dest, const void *src, uint32_t count)</td></tr>
<tr class="separator:aac68f9e9de2f571d9a37ea9b801d5913"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77de5677796115fbb79b56c172636be8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a77de5677796115fbb79b56c172636be8">memMove</a> (void *dest, const void *src, uint32_t count)</td></tr>
<tr class="separator:a77de5677796115fbb79b56c172636be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c4d58510ddab8ce6da814f5710fa360"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="PxWindowsIntrinsics_8h.html#a8c4d58510ddab8ce6da814f5710fa360">memZero128</a> (void *dest, uint32_t offset=0)</td></tr>
<tr class="separator:a8c4d58510ddab8ce6da814f5710fa360"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="a1cf5e31b1076fc655d2a46a5257d6590"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cf5e31b1076fc655d2a46a5257d6590">&#9670;&nbsp;</a></span>abs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float abs </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific absolute value </p>

<p class="reference">Referenced by <a class="el" href="classPxStrideIterator.html#af0456af6b4af0f27179cff158cb51081">PxStrideIterator&lt; T &gt;::isCompatible()</a>, and <a class="el" href="group__foundation.html#gadf64a1111c7dfd07290aed0cf3277098">PxAbs()</a>.</p>

</div>
</div>
<a id="a87498b7c02e15d4a59213016c7d1f4e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87498b7c02e15d4a59213016c7d1f4e8">&#9670;&nbsp;</a></span>cos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float cos </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific cosine </p>

<p class="reference">Referenced by <a class="el" href="group__foundation.html#ga903d59eeddf0328e54f1caf8efddf2fc">PxCos()</a>.</p>

</div>
</div>
<a id="a8b6eb99ef7e675d607268a1f8413be5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b6eb99ef7e675d607268a1f8413be5e">&#9670;&nbsp;</a></span>fsel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float fsel </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>c</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific select float </p>

</div>
</div>
<a id="a6cf2084ddd2ba3ac6cc5b0e4e7389806"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cf2084ddd2ba3ac6cc5b0e4e7389806">&#9670;&nbsp;</a></span>isFinite() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> bool isFinite </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific finiteness check (not INF or NAN) </p>

</div>
</div>
<a id="a5d4ea7807df2fcf1968275bc06e79319"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d4ea7807df2fcf1968275bc06e79319">&#9670;&nbsp;</a></span>isFinite() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> bool isFinite </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific finiteness check (not INF or NAN) </p>

</div>
</div>
<a id="aac68f9e9de2f571d9a37ea9b801d5913"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac68f9e9de2f571d9a37ea9b801d5913">&#9670;&nbsp;</a></span>memCopy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void* memCopy </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Copies <code>count</code> bytes from <code>src</code> to <code>dst</code>. User memMove if regions overlap. </p>

</div>
</div>
<a id="a77de5677796115fbb79b56c172636be8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77de5677796115fbb79b56c172636be8">&#9670;&nbsp;</a></span>memMove()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void* memMove </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Copies <code>count</code> bytes from <code>src</code> to <code>dst</code>. Supports overlapping regions. </p>

</div>
</div>
<a id="a298ee9e11253b68a85543aaf66dc30e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a298ee9e11253b68a85543aaf66dc30e2">&#9670;&nbsp;</a></span>memSet()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void* memSet </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Sets <code>count</code> bytes starting at <code>dst</code> to <code>c</code>. </p>

</div>
</div>
<a id="a77584c1c595ec2dbc695f76986b5e616"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77584c1c595ec2dbc695f76986b5e616">&#9670;&nbsp;</a></span>memZero()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void* memZero </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Sets <code>count</code> bytes starting at <code>dst</code> to zero. </p>

</div>
</div>
<a id="a8c4d58510ddab8ce6da814f5710fa360"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c4d58510ddab8ce6da814f5710fa360">&#9670;&nbsp;</a></span>memZero128()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void memZero128 </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>offset</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set 128B to zero starting at <code>dst+offset</code>. Must be aligned. </p>

<p class="reference">References <a class="el" href="namespacephysx_1_1intrinsics.html#a28ed71571fbc8a7ed6a3d4c2f8427f8f">physx::intrinsics::memSet()</a>, and <a class="el" href="group__foundation.html#ga07ffc52cd4afa8e797a5fe6e1cb7e17a">PX_SHARED_ASSERT</a>.</p>

</div>
</div>
<a id="aa6806d765fa4621492ee988d3d3c13c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6806d765fa4621492ee988d3d3c13c6">&#9670;&nbsp;</a></span>recip()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float recip </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific reciprocal </p>

</div>
</div>
<a id="a39a4b10ef013902b46ab72a6f301faaf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39a4b10ef013902b46ab72a6f301faaf">&#9670;&nbsp;</a></span>recipFast()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float recipFast </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific reciprocal estimate </p>

</div>
</div>
<a id="a11fd1983ba8a2204909ae97ca3ed322f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11fd1983ba8a2204909ae97ca3ed322f">&#9670;&nbsp;</a></span>recipSqrt()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float recipSqrt </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific reciprocal square root </p>

</div>
</div>
<a id="adda5156abeb71c4d649c10a90c384814"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adda5156abeb71c4d649c10a90c384814">&#9670;&nbsp;</a></span>recipSqrtFast()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float recipSqrtFast </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific reciprocal square root estimate </p>

</div>
</div>
<a id="a2021ee304ce528baa264c35c7bb0f981"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2021ee304ce528baa264c35c7bb0f981">&#9670;&nbsp;</a></span>selectMax()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float selectMax </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific maximum </p>

</div>
</div>
<a id="aebde282c6d91cb975d8e56196c0f7a65"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebde282c6d91cb975d8e56196c0f7a65">&#9670;&nbsp;</a></span>selectMin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float selectMin </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific minimum </p>

</div>
</div>
<a id="a480a9e7204fe3c8f4b3d60eb7165fae8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a480a9e7204fe3c8f4b3d60eb7165fae8">&#9670;&nbsp;</a></span>sign()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float sign </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific sign </p>

</div>
</div>
<a id="ae1934f6d8ecf82dbfb597f965fb09846"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1934f6d8ecf82dbfb597f965fb09846">&#9670;&nbsp;</a></span>sin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float sin </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific sine </p>

<p class="reference">Referenced by <a class="el" href="group__foundation.html#ga56576468182972ec8511c7dd20f47a4d">PxSin()</a>.</p>

</div>
</div>
<a id="a93316de46822f61a4fb79f603d05be61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93316de46822f61a4fb79f603d05be61">&#9670;&nbsp;</a></span>sqrt()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6e444d58dbf1459261fadc9b79594f63">PX_CUDA_CALLABLE</a> <a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> float sqrt </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>platform-specific square root </p>

<p class="reference">Referenced by <a class="el" href="group__foundation.html#ga2e96f326a9b29ecb2cbe00f2f7662cf0">PxRecipSqrt()</a>, and <a class="el" href="group__foundation.html#ga23fec839e8daf10494d43640dca49e09">PxSqrt()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_266c30cc99b40eba7d94345de82f8db9.html">packman-repo</a></li><li class="navelem"><a class="el" href="dir_44fe44e2771711da9c667697b685dcda.html">PxShared-public</a></li><li class="navelem"><a class="el" href="dir_e1dbf85b29c2f923267acb78e2c299dd.html">1.1.trunk.29467035</a></li><li class="navelem"><a class="el" href="dir_67f783feb5a64e036eee501a17b4317a.html">include</a></li><li class="navelem"><a class="el" href="dir_d5f223569182be7fb9b876919d20e64f.html">foundation</a></li><li class="navelem"><a class="el" href="dir_ab2a56303ead272aa5d39b18fca06b74.html">windows</a></li><li class="navelem"><a class="el" href="PxWindowsIntrinsics_8h.html">PxWindowsIntrinsics.h</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
